Network routers are devices which direct data traffic over a network. In most networks, data is organized in packets, which are generally analogous to separate cars connected together in a train.
The primary function of a router is to forward a packet toward its destination, which is the destination IP address of the packet. A routing table uses the same idea that one does when using a map in package delivery. Whenever a computer needs to send data to another computer on a network, it must first know where to send it. If the sending computer cannot directly connect to the destination computer, it has to send it via routers along a proper route to the destination computer. Most computers do not try to figure out which route(s) might work; instead, a computer will send an IP packet to a router in the LAN, which then decides how to route the “package” of data to the correct destination. Each router needs to keep track of which way to deliver various packages of data, and for this it uses a routing table. A routing table is a database which keeps track of paths, like a map, and allows the router to send the IP packet to the next router or final destination computer. Each routing table entry lists at least the following information: the destination network or network address, a metric or cost and the next hop address which is the address of the next router to which the packet is to be sent on the way to its final destination. When a packet arrives at the router, the destination address contained within the packet is compared against the routing table entries. If only one route table entry matches the destination address, then the packet is sent to the corresponding next hop address. If there are more than one route table entries that match the destination address, then the metric information is used to select the best route. Metric based route selection is dependent upon the routing algorithm and protocol used. Classes of routing algorithms include link-state algorithms path vector protocols. If no route table entries match the destination address, then the packet is discarded as no route to the destination exists. The process of selecting a route is called route selection.
Assuming that the routing tables are consistent, the simple algorithm of relaying packets to their destination's next hop thus suffices to deliver data anywhere in a network. Hop-by-hop is the fundamental characteristic of the IP Internetwork Layer[1] and the OSI Network Layer.
The route table information describes the “reachability” of a network address from the perspective of a specific router. Just like driving directions, where, when a road is closed, “you can't get there from here” is an accurate description of the situation, a router can also produce the equivalent “you can't get there from here” as a result of a network failure or other event.
Route table entries are usually managed by routing protocols such as OSPF and IGMP. Route table entries may also be managed manually by what are commonly called static route table entries.
A system which enhances the manageability and security of networks would provide network communications that are more robust and secure. The development of such a system would constitute a major technological advance, and would satisfy long felt needs and aspirations in the network security industry.